package com.bgs.travelapp.card.service;

import com.bgs.travelapp.card.entity.CardDetailsEntity;
import com.bgs.travelapp.card.entity.CardEntity;
import com.bgs.travelapp.page.PageRequest;
import com.bgs.travelapp.page.PageResult;

import java.util.List;

/**
 * gpd
 * 会员卡详情修改功能 （后端）
 * 2022-07-25
 */
public interface CardDetailsService {
    /**
     * 分月全查+模糊查（会员卡名称） （后端---会员卡详情）
     * gpd 2022-08-02 17:09
     * @param pageRequest
     * @return
     */
    PageResult getCardDetailsByPage(PageRequest pageRequest,String cardName);

    /**
     * 新增会员卡详情  （后端---会员卡详情）
     * gpd 2022-08-02 17:14
     * @param cardDetailsEntity
     * @return
     */
    Integer saveCardDetails(CardDetailsEntity cardDetailsEntity);

    /**
     * 查询会员卡类型 （后端---会员卡详情）
     * gpd 2022-08-02 17:09
     * @return
     */
    List<CardEntity> getSelectCard();

    /**
     * 新增修改校验方法--查询月份是否重复录入 （后端---会员卡详情）
     * gpd 2022-08-02 17:14
     * @param purchaseMonth
     * @param cardId
     * @return
     */
    List<CardDetailsEntity> selectCardDetailsPurchaseMonth(Integer purchaseMonth,Integer cardId);

    /**
     * 修改会员卡详情 （后端---会员卡详情）
     * gpd 2022-08-02 17:15
     * @param cardDetailsEntity
     * @return
     */
    Integer updateCardDetails(CardDetailsEntity cardDetailsEntity);

    /**
     * 删除会员卡详情 （后端---会员卡详情）
     * gpd 2022-08-02 17:15
     * @param id
     * @return
     */
    Integer deleteCardDetails(Integer id);
}
